macro attr_find_new_period

Список используемых вспомогательных макросов

Без вспомогательных макросов.

Описание

Это четвёртый шаг макроса attr. В этом макросе ищется новый период для каждого события в атрибуции. Он определяет, когда начинается новый период для анализа данных.

Аргументы

Этот макрос принимает следующие аргументы:

  params = none,
  funnel_name=none,
  limit0=none,
  metadata=project_metadata()

Функциональность

Сначала в макросе происходит настройка материализации данных: устанавливается порядок сортировки данных по идентификатору группы, дате, ссылке и идентификатору.

Далее происходит извлечение метаданных и шагов воронки для формирования списка шагов и их порядкового номера.

После этого происходит подготовка нового периода. Для каждой группы определяется дата последнего события на шагах, входящих в состав периода.

Далее в макросе идёт определение, является ли каждое событие новым периодом.

Для каждого события вычисляется разница между его датой и датой последнего события в периоде.

Если разница меньше указанного периода (или 90 дней, если период не указан), событие считается принадлежащим текущему периоду.

Если аргумент limit0 активирован, то в конце SQL-запроса будет добавлено LIMIT 0.

Пример

Файл в формате sql в папке models. Название файла attr_myfirstfunnel_find_new_period

Содержимое файла:

-- depends_on: {{ ref('attr_myfirstfunnel_add_row_number') }}

{{ datacraft.attr() }}